package com.book.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.book.common.entity.QueryRequest;
import com.book.system.entity.SysLog;
import com.fasterxml.jackson.core.JsonProcessingException;
import org.aspectj.lang.ProceedingJoinPoint;
import org.springframework.scheduling.annotation.Async;

import java.util.List;

/**
 * @Author: Zhang Gaohe
 * @Date: 2021/3/31
 **/

public interface SysLogService extends IService<SysLog> {
    // 查询
    List<SysLog> findAllLogs(SysLog log);

    // 分页
    IPage<SysLog> getLogByPage(QueryRequest request, SysLog log);

    //删除
    void deleteLogs(String[] logIds);

    @Async
    void saveLog(ProceedingJoinPoint point, SysLog log) throws JsonProcessingException;
}
